
client.o:     file format elf64-littleaarch64


Disassembly of section .text:

0000000000000000 <main>:
   0:	d11143ff 	sub	sp, sp, #0x450
   4:	a9007bfd 	stp	x29, x30, [sp]
   8:	910003fd 	mov	x29, sp
   c:	b9001fa0 	str	w0, [x29, #28]
  10:	f9000ba1 	str	x1, [x29, #16]
  14:	9100e3a0 	add	x0, x29, #0x38
  18:	d2808001 	mov	x1, #0x400                 	// #1024
  1c:	aa0103e2 	mov	x2, x1
  20:	52800001 	mov	w1, #0x0                   	// #0
  24:	94000000 	bl	0 <memset>
  28:	b9401fa0 	ldr	w0, [x29, #28]
  2c:	71000c1f 	cmp	w0, #0x3
  30:	54000121 	b.ne	54 <main+0x54>  // b.any
  34:	f9400ba0 	ldr	x0, [x29, #16]
  38:	91004000 	add	x0, x0, #0x10
  3c:	f9400000 	ldr	x0, [x0]
  40:	94000000 	bl	0 <atoi>
  44:	b9044fa0 	str	w0, [x29, #1100]
  48:	b9444fa0 	ldr	w0, [x29, #1100]
  4c:	7100001f 	cmp	w0, #0x0
  50:	540000ca 	b.ge	68 <main+0x68>  // b.tcont
  54:	90000000 	adrp	x0, 0 <main>
  58:	91000000 	add	x0, x0, #0x0
  5c:	94000000 	bl	0 <printf>
  60:	52800020 	mov	w0, #0x1                   	// #1
  64:	94000000 	bl	0 <exit>
  68:	f9400ba0 	ldr	x0, [x29, #16]
  6c:	91002000 	add	x0, x0, #0x8
  70:	f9400000 	ldr	x0, [x0]
  74:	94000000 	bl	0 <gethostbyname>
  78:	f90223a0 	str	x0, [x29, #1088]
  7c:	f94223a0 	ldr	x0, [x29, #1088]
  80:	f100001f 	cmp	x0, #0x0
  84:	540000c1 	b.ne	9c <main+0x9c>  // b.any
  88:	90000000 	adrp	x0, 0 <main>
  8c:	91000000 	add	x0, x0, #0x0
  90:	94000000 	bl	0 <perror>
  94:	52800020 	mov	w0, #0x1                   	// #1
  98:	94000000 	bl	0 <exit>
  9c:	52800002 	mov	w2, #0x0                   	// #0
  a0:	52800021 	mov	w1, #0x1                   	// #1
  a4:	52800040 	mov	w0, #0x2                   	// #2
  a8:	94000000 	bl	0 <socket>
  ac:	b9043fa0 	str	w0, [x29, #1084]
  b0:	b9443fa0 	ldr	w0, [x29, #1084]
  b4:	3100041f 	cmn	w0, #0x1
  b8:	540000c1 	b.ne	d0 <main+0xd0>  // b.any
  bc:	90000000 	adrp	x0, 0 <main>
  c0:	91000000 	add	x0, x0, #0x0
  c4:	94000000 	bl	0 <perror>
  c8:	52800020 	mov	w0, #0x1                   	// #1
  cc:	94000000 	bl	0 <exit>
  d0:	9100a3a0 	add	x0, x29, #0x28
  d4:	d2800201 	mov	x1, #0x10                  	// #16
  d8:	94000000 	bl	0 <bzero>
  dc:	52800040 	mov	w0, #0x2                   	// #2
  e0:	790053a0 	strh	w0, [x29, #40]
  e4:	b9444fa0 	ldr	w0, [x29, #1100]
  e8:	12003c00 	and	w0, w0, #0xffff
  ec:	94000000 	bl	0 <htons>
  f0:	12003c00 	and	w0, w0, #0xffff
  f4:	790057a0 	strh	w0, [x29, #42]
  f8:	f94223a0 	ldr	x0, [x29, #1088]
  fc:	f9400c00 	ldr	x0, [x0, #24]
 100:	f9400000 	ldr	x0, [x0]
 104:	b9400000 	ldr	w0, [x0]
 108:	b9002fa0 	str	w0, [x29, #44]
 10c:	9100a3a0 	add	x0, x29, #0x28
 110:	52800202 	mov	w2, #0x10                  	// #16
 114:	aa0003e1 	mov	x1, x0
 118:	b9443fa0 	ldr	w0, [x29, #1084]
 11c:	94000000 	bl	0 <connect>
 120:	3100041f 	cmn	w0, #0x1
 124:	540000c1 	b.ne	13c <main+0x13c>  // b.any
 128:	90000000 	adrp	x0, 0 <main>
 12c:	91000000 	add	x0, x0, #0x0
 130:	94000000 	bl	0 <perror>
 134:	52800020 	mov	w0, #0x1                   	// #1
 138:	94000000 	bl	0 <exit>
 13c:	9100e3a0 	add	x0, x29, #0x38
 140:	d2808002 	mov	x2, #0x400                 	// #1024
 144:	aa0003e1 	mov	x1, x0
 148:	b9443fa0 	ldr	w0, [x29, #1084]
 14c:	94000000 	bl	0 <read>
 150:	b100041f 	cmn	x0, #0x1
 154:	54000081 	b.ne	164 <main+0x164>  // b.any
 158:	90000000 	adrp	x0, 0 <main>
 15c:	91000000 	add	x0, x0, #0x0
 160:	94000000 	bl	0 <perror>
 164:	9100e3a1 	add	x1, x29, #0x38
 168:	90000000 	adrp	x0, 0 <main>
 16c:	91000000 	add	x0, x0, #0x0
 170:	94000000 	bl	0 <printf>
 174:	b9443fa0 	ldr	w0, [x29, #1084]
 178:	94000000 	bl	0 <close>
 17c:	52800000 	mov	w0, #0x0                   	// #0
 180:	94000000 	bl	0 <exit>
